Ruminations on Multi-Tenant Databases

نویسندگان

  • Dean Jacobs
  • Stefan Aulbach
چکیده

This is a position paper on multi-tenant databases. As motivation, it first describes the emerging marketplace of hosted enterprise services and the importance of using multi-tenancy to handle high traffic volumes at low cost. It then outlines the main requirements on multi-tenant databases: scale up by consolidating multiple tenants onto the same server and scale out by providing an administrative framework that manages a farm of such servers. Finally it describes three approaches to implementing multi-tenant databases and compares them based on some simple experiments. The main conclusion is that existing database vendors need to enhance their products to better support multi-tenancy. 1 Hosted Services and Multi-Tenancy In the hosted service model [GM02a, GM02b, Wa03], a service provider develops an application and operates the system that hosts it. Customers access the application over the Internet using industry-standard web browsers or Web Services clients. As the Internet has matured, hosted services have appeared for an increasingly wide variety of enterprise applications, including ones that manage sales, marketing, support, human resources, planning, manufacturing, inventory, financials, purchasing, and compliance [Th06]. While hosted services are attractive to all segments of the market, they are particularly appealing to smallto mediumsized businesses, which often lack the resources to maintain a complex data center. Hosted services are exploiting such “greenfield” opportunities to expand the overall size of the market. In comparison to traditional on-premises solutions, hosted services can reduce the total cost of ownership of an application by aggregating customers together and leveraging economy of scale. This principle applies to both capital expenditures, e.g., for hardware and software, and operational expenditures, e.g., for bandwidth and personnel. Because a hosted service is focused on one application, the infrastructure and the procedures for managing it can be highly optimized: well-known examples here include the Google File System [GGL03] and Hotmail [Sm05]. Such optimizations are essential to support large numbers of smallto medium-sized businesses, which would otherwise be prohibitively expensive. Multi-tenancy is an optimization for hosted services in which multiple customers are consolidated onto the same operational system, a technique pioneered by salesforce.com [Sa06, Co06]. Multi-tenancy allows pooling of resources, which improves utilization by eliminating the need to provision each customer for their maximum load. Multi-tenancy can also improve management efficiencies by providing a uniform framework for administering the system. A multi-tenant system should support both scale up and scale out [De99]: scale up by consolidating multiple customers onto the same server and scale out by having the administrative framework span a farm of such servers. Scale out is required because it is not cost effective to scale up a single server indefinitely. The administrative framework of a multi-tenant system should support the ability to migrate a customer from one server to another within the farm. For example, a customer might start out on a server that manages trial accounts, be moved to a server that manages small production accounts, and grow until it is moved to a dedicated server that manages only one account. Migration should also be possible between farms, for example, to allow customers to be moved from one data center to another. The administrative framework should also support rolling upgrade, where the servers in a farm are upgraded to a new version of the application one at a time. Since it is difficult to generate realistic Internet-scale workloads for testing, rolling upgrades are needed to gain experience with new versions before they are put widely into production.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Multi - Tenant Customizable Databases Master ’ s

We argue that there is a need for Multi-Tenant Customizable OLTP systems. Such systems need a Multi-Tenant Customizable Database (MTC-DB) as a backing. To stimulate the development of such databases, we propose the benchmark MTCB. Benchmarks for OLTP exist and multi-tenant benchmarks exist, but no MTC-DB benchmark exists that accounts for customizability. We formulate seven requirements for the...

متن کامل

Comparison of Different Implementations of Multi-Tenant Databases

In an ever-growing Internet population and world’s globalisation ‘on demand’ service applications are trying to replace traditional ‘on premisses’ solutions. The hosted services (or Software as a Service) model is gaining therefore much importance. In this model the software vendor provides an Internet hosted version of the application. Customers are then accessing it from a website and are pay...

متن کامل

Sharing is Caring A Decision Support Model for Multi-Tenant Architectures Master’s Thesis

Business software is increasingly moving from a traditional on-premises deployment model to a Software as a Service deployment model. In a Software as a Service deployment model, the possession and ownership of the software application is separated from its use. The software is hosted by a Software as a Service provider, relieving the customer organization from the responsibility for supporting...

متن کامل

A Review Of Multi-Tenant Database And Factors That Influence Its Adoption

A Multi-tenant database (MTD) is a way of deploying a Database as a Service (DaaS). This is gaining momentum with significant increase in the number of organizations ready to take advantage of the technology. A multi-tenant database refers to a principle where a single instance of a Database Management System (DBMS) runs on a server, serving multiple clients organizations (tenants). This is a d...

متن کامل

Sharing is Caring A Decision Support Model for Multi-Tenant Architectures

Business software is increasingly moving from a traditional on-premises deployment model to a Software as a Service deployment model. In a Software as a Service deployment model, the possession and ownership of the software application is separated from its use. The software is hosted by a Software as a Service provider, relieving the customer organization from the responsibility for supporting...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2007